package com.example.concurrency.xx.thread;


import java.util.concurrent.CountDownLatch;
import java.util.concurrent.CyclicBarrier;
import java.util.concurrent.Semaphore;
import java.util.concurrent.locks.*;

/**
 * @author: dangwen
 * @createDate: 2021/2/9
 */
public class AQSDemo {
    public static void main(String[] args) {
        ReentrantLock reentrantLock = new ReentrantLock();
        ReentrantLock reentrantLock1 = new ReentrantLock(true);
        CyclicBarrier cyclicBarrier = new CyclicBarrier(5);
        CountDownLatch countDownLatch = new CountDownLatch(5);
        try {
            countDownLatch.await();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        countDownLatch.notify();
        Semaphore semaphore = new Semaphore(5);
        ReadWriteLock readWriteLock = new ReentrantReadWriteLock();

        AbstractQueuedLongSynchronizer abstractQueuedLongSynchronizer;
        Lock lock;
    }
}
